package com.patrol.utils;

import com.aliyun.oss.ClientException;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.OSSException;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.net.URL;
import java.util.Date;

///**
// * @author 宋灿
// * @version 1.0
// * @description: TODO
// * @date 2021/8/13 18:55
// */
//public class FileUploadUtils {
//    public String uploadOss(MultipartFile multipartFile, String fileName) {
//        // oss 节点
//        String endpoint = "https://oss-cn-beijing.aliyuncs.com";
//        // oss accessKeyId
//        String accessKeyId = "LTAI4G1E9B3838mnVB1QjEVW";
//        // oss accessKeySecret
//        String accessKeySecret = "R3qHsEAKqpdKgyodc2rfaWMg4E5qHH";
//        // oss 存储bucket
//        String bucket = "202103030";
//
//        OSS ossClient = null;
//        try {
//
//            // 初始化 ossClient
//            ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
//
//            // 上传的URI
//            String uri = "prison_photo/" + fileName;
//            Date expiration = new Date(new Date().getTime() + 3600l * 1000 * 24 * 365 * 100);
//            // 上传文件
//            ossClient.putObject(bucket, uri, multipartFile.getInputStream());
//            URL url = ossClient.generatePresignedUrl(bucket, uri, expiration);
//
//            // 返回完整的访问地址
//            return url.toString();
//        } catch (OSSException | ClientException e) {
//            return "文件上传异常";
//        } catch (IOException e) {
//            return "文件IO异常";
//        } finally {
//            if (ossClient != null) {
//                // 释放资源
//                ossClient.shutdown();
//            }
//        }
//    }
//
//    /**
//     * 获取文件后缀
//     * @param fileName
//     * @return
//     */
//    public String getSuffix(String fileName) {
//        int index = fileName.lastIndexOf(".");
//        if (index != -1) {
//            String suffix = fileName.substring(index + 1);
//            if (!suffix.isEmpty()) {
//                return suffix;
//            }
//        }
//        throw new IllegalArgumentException("非法的文件名称：" + fileName);
//    }
//}
